Change Event (placeholder)


Click Event (placeholder)


DblClick Event (placeholder)


DragDrop Event (placeholder)


DragOver Event (placeholder)


KeyDown Event (placeholder)


KeyPress Event (placeholder)


KeyUp Event (placeholder)


MouseDown Event (placeholder)


MouseMove Event (placeholder)


MouseUp Event (placeholder)


OLECompleteDragEvent (placeholder)


OLEDragDrop Event (placeholder)


OLEDragOver Event (placeholder)


OLEGiveFeedback Event (placeholder)


OLESetData Event (placeholder)


OLEStartDrag Event (placeholder)


Refresh Method (placeholder)


OLEDrag Method (placeholder)


Appearance Property (placeholder)


BackColor Property (placeholder)


Caption Property (placeholder)


Enabled Property (placeholder)


Font Property (placeholder)


ForeColor Property (placeholder)


IntegralHeight Property (placeholder)


Locked Property (placeholder)


MouseIcon Property (placeholder)


MousePointer Property (placeholder)


OLEDragMode Property (placeholder)


OLEDropMode Property (placeholder)


SelLength Property (placeholder)


SelStart Property (placeholder)


SelText Property (placeholder)


Style Property (placeholder)


Text Property (placeholder)


Keyword Not Found

The keyword you've selected can't be found in Visual Basic Help. It's possible that:

•	The keyword is misspelled

•	You selected too much or too little text

•	You asked for help on a word that is not a valid Visual Basic keyword.

The easiest way to get help on a specific keyword is to position the insertion point anywhere within the keyword you want help on and press F1. You do not need to select the keyword. In fact, if you select only a portion of the keyword, or more than a single word, Help will not find what you're looking for.

To use the built-in Help search dialog box, press the Help Topics button on the toolbar.

One option to possibly find what you're looking for is to view the ReadMe file that comes with Visual Basic. This document contains information regarding last-minute changes, additions, and deletions that did not make it into the final documentation.


Left, Top Properties (Placeholder)


Height, Width Properties (Placeholder)


Tag Property (Placeholder)


ToolTipText Property (Placeholder)


Count Property (Placeholder)


Item Method (Placeholder)


Hwnd Property (Placeholder)


TabStop Property (Placeholder)


Visible Property (Placeholder)


Picture Property (placeholder)


Max, Min Properties (placeholder)


Add Method (placeholder)


Clear Method (placeholder)


Container Property (placeholder)


Controls Collection (placeholder)


Copies Property (placeholder)


DataBinding Object (placeholder)


DataBindings Collection (placeholder)


Filename Property (placeholder)


FontBold, FontItalic, FontStrikeThru Properties (placeholder)


FontName Property (placeholder)


FontSize Property (placeholder)


GetData Method (placeholder)


GetFormat Method (placeholder)


HelpFile Property (placeholder)


Item Property (placeholder)


Remove Method (placeholder)


SetData Method (placeholder)


Align Property (placeholder)


DragIcon Property (placeholder)


DragMode Property (placeholder)


HelpContextID Property (placeholder)


TabIndex Property (placeholder)


Alignment Constants (placeholder)


Border Property Constants (placeholder)


BorderStyle Constants (placeholder)


BorderStyle Property (ActiveX Controls) (placeholder)


Clear Method (ActiveX Controls) (placeholder)


Clipboard Object Constants (placeholder)


Color Constants (placeholder)


CommonDialog Control Constants (placeholder)


CommonDialog Error Constants (placeholder)


Control Constants (placeholder)


DataBindings Property (placeholder)


DDE Constants (placeholder)


Drag-and-Drop Constants (placeholder)


Drawing Constants (placeholder)


FetchVerbs Method (placeholder)


Form Constants (placeholder)


Graphics Constants (placeholder)


Grid Control Constants (placeholder)


Help Constants (placeholder)


HideSelection Property (ActiveX Controls) (placeholder)


HideSelection Property (placeholder)


Image Property (ActiveX Controls) (placeholder)


ImageList Property (ActiveX Controls) (placeholder)


Index Property (ActiveX Controls) (placeholder)


Index Property (placeholder)


Key Code Constants (placeholder)


Key Property (ActiveX Controls) (placeholder)


Menu Accelerator Constants (placeholder)


Menu Control Constants (placeholder)


Miscellaneous Constants (placeholder)


MousePointer Constants (placeholder)


OLE Container Control Constants (placeholder)


Picture Object Constants (placeholder)


Printer Object Constants (placeholder)


RasterOp Constants (placeholder)


Remove Method (ActiveX Controls) (placeholder)


ShowInTaskbar Property (placeholder)


ShowTips Property (ActiveX Controls) (placeholder)


ShowWhatsThis Method (placeholder)


Text Property (ActiveX Controls) (placeholder)


Value Property (ActiveX Controls) (placeholder)


Variant Type Constants (placeholder)


Visual Basic Constants (placeholder)


WhatsThisButton Property (placeholder)


WhatsThisHelp Property (placeholder)


WhatsThisHelpID Property (placeholder)


WhatsThisMode Method (placeholder)


Windows 95 Control Constants (placeholder)


ColIsVisible Property (placeholder)


ColPos Property (placeholder)


DataObject Object (placeholder)


DataObjectFiles Collection (placeholder)


DataSource Property (placeholder)


Drag Method (placeholder)


DrawMode Property (placeholder)


FixedAlignment Property (placeholder)


GotFocus Event (placeholder)


GridLineWidth Property (placeholder)


Index Property (Control Array) (placeholder)


LostFocus Event (placeholder)


Move Method (placeholder)


Name Property (placeholder)


Object Property (placeholder)


Parent Property (placeholder)


RowColChange Event (placeholder)


RowIsVisible Property (placeholder)


RowPos Property (placeholder)


SetFocus Method (placeholder)


ZOrder Method (placeholder)


Files Method (placeholder)


Connect Event (placeholder)


HScrollSmallChange, VScrollSmallChange Properties (placeholder)


MinHeight, MinWidth Properties (placeholder)


Property Pages Dialog Box (placeholder)


RemoteHost Property (placeholder)


RemotePort Property (placeholder)


ViewportHeight, ViewportLeft, ViewportTop, ViewportWidth Properties (placeholder)


Resync Method (Remote Data) (placeholder)


ContainedVBControls Collection (placeholder)


Member Object (placeholder)


Members Collection (placeholder)


VBComponentsEvents Object (placeholder)


VBProjectsEvents Object (placeholder)


Files Property (placeholder)


Alignment Property (placeholder)


AboutBox Method (placeholder)


Col, Row Properties (placeholder)


RowHeight Property (placeholder)


Scroll Event (placeholder)


ScrollBars Property (placeholder)


SelEndCol, SelStartCol, SelEndRow, SelStartRow Properties (placeholder)


ScrollBars Property (placeholder)


Services Form (Application Performance Explorer)

Allows you to specify how long each service request will take and whether or not it will require processor cycles, if the default service, AEService.Service is being used. You may also specify a custom service for the Application Performance Explorer (APE) to use.

Use if you are replicating the type of work that will be needed by your solutions. Therefore, the requirements of a planned system can be determined.

Tab Options

Length in milliseconds   If the default service class is being used, this option specifies how long it will wait in milliseconds before it returns the Workers call.

Use Processor Cycles   If selected, the default service class will loop, using processor cycles, for the duration specified by the Length in milliseconds box. This occurs for each call made to the service provider. If cleared, the default service will wait for the specified duration without using processor cycles.

Specify the Service   By selecting this option, you can specify a custom service class object to be used instead of the default one. To use a custom service class object, you must specify the ProgID and the desired task in the following syntax: library.class.task. The Worker class object will receive specified text and create the appropriate object according to the ProgID. The task name will be passed to the custom service class object as its instruction.


Application Performance Explorer

A utility written in Microsoft Visual Basic to aid in the design, deployment planning and performance-tuning of distributed client/server applications. It allows you to easily run automated "what-if" tests to profile the performance of a multi-tier application in different network topologies, taking into consideration such factors as network bandwidth, request frequency, data transfer requirements, and server capacity.

Use it to explore the distributed application scenarios in your environment and on your own machines.

In addition, the Application Performance Explorer (APE) is an example of a well-designed distributed application. The Visual Basic source code is well commented and structured to serve as a template for component-based client/server applications. This source code can easily be used as the starting point for a custom multi-tier solution.

Menus

File   Allows you to save or remove a profile and to exit the APE.

•	Set Profile Collection — Opens a dialog box to allow selection of an INI file. The selected INI file will be used for saving and loading profiles.

•	Save Profile — Saves the current settings as a profile. You will be prompted for a profile name. After saving the profile, the new profile name appears in the Profile list.

•	Remove Profile — Deletes the profile currently shown in the Profile list from the profile collection, the selected INI file.

Model   Allows you to change the Application Performance Explorer framework between the Asynchronous model and the Synchronous model.

When using the Asynchronous model, Clients complete tasks by submitting Service requests to the QueueMgr, which delegates them to Workers. Results are returned to Clients through callbacks from the Expediter.

When using the Synchronous model, Clients complete tasks by instantiating Workers and calling them directly.

Help   Opens the About box.

Dialog Box Options

Profile   Includes all of the profiles stored in the currently selected Profile Collection.

•	To load a saved profile, select it from the Profile list.

•	To save the current settings as a new profile, click the plus button to the right of the Profile list or use the Save Profile command in the File menu.

•	To delete a profile, click the minus button or use the Remove Profile command in the File menu.

•	To select a different Profile Collection, use the Set Profile Collection command in the File menu.

Start   Causes the Application Performance Explorer (APE) to proceed with a test using the current settings.

Stop   Interrupts a test to allow the user to start another test with a different configuration.

Close   Causes the Manager to close and all the APE components to be unloaded. If a test is running, it will be interrupted.


Asynchronous Command (Model Menu Application Performance Explorer)

Causes following tests to use the Application Performance Explorer’s asynchronous framework. Tasks are completed by requesting them from the QueueMgr, which delegates them to Workers. Task results are returned through callbacks from the Expediter.


Asynchronous Tab (Application Performance Explorer)

Exposes properties of objects specific to using the asynchronous framework.

Tab Options

Queue Manager   Only used for the Asynchronous model.

•	Show Form — When selected, the Queue Manager’s form is displayed during the following session.

•	Log Events — When selected, the Queue Manager logs certain events. The log records are collected by the Manager at the end of a test.

Expediter   Only used for the Asynchronous model.

•	Show Form — When selected, the Expediter’s form is displayed during the following session.

•	Log Events — When selected, the Expediter logs certain events. The log records are collected by the Manager at the end of a test.


Client Properties Form (Application Performance Explorer)

Tab Options

Number of clients   Specifies the number of client processes created during the following test.

Time between Calls   The time in milliseconds that each Client process will wait between calls. Using the Asynchronous model, clients call the Queue Manager, but using the Synchronous model, clients call Workers.

Number of Calls   Specifies how many calls each Client process will make to complete a test.

Remote Clients   When selected, allows you to configure the Application Performance Explorer (APE) to start Client processes on remote machines.

•	To configure this, the Clients per Machine value must be specified and a machine list must be created by using the dialog displayed when the Configure button is clicked.

•	When using Remote Clients, the number of total Client processes used for a test are still determined by the Number of Clients value. However, this can be limited by the number of machines provided and the number of Clients per Machine specified.

Clients per Machine   Specifies the number of Client processes that can be created per machine.

Configure   Opens a dialog for creating a Client machine name list.

•	To use the local machine for Client processes, the Include Local Machine in client tests box must be selected on this dialog.

Send Tab

Pass Data to Services   When selected, the Client processes pass data to the Service objects with each call.

In the Asynchronous model, the data is passed via the Queue Manager and a Worker with each Service Request.

In the Synchronous Model, data is passed via only a Worker.

Dataset Type   Passes the data as the type specified by the option buttons below.

•	Variant Array — Recommended.

•	Variant Collection — Only provided to demonstrate how dramatic the cost of passing Collections cross process is. Not a recommended option.

•	Bytes per row — Provide a means to specify how much data will be passed to the Services.

•	Number of rows — Provide a means to specify how much data will be passed to the Services.

Return Data Tab

Return Data to Clients   When selected, the Clients will instruct the Service objects to return data for every Client call. These options will only have an effect with the provided Service object AEService.Service. When creating a custom Service object, you may pass whatever type and size of data that can be stored in a variant.

Dataset Type   The Services passes the data as the type specified by the option buttons below.

•	Variant Array — Using arrays instead of collections is strongly recommended.

•	Variant Collection — Only provided to demonstrate how dramatic the cost of passing Collections cross process is.

•	Bytes per row — Provides a means to specify how much data will be passed to the Services.

•	Number of rows — Provides a means to specify how much data will be passed to the Services.

Show Forms   When selected, Client form(s) are displayed during the following session.

Log Events   When selected, Clients log certain events. The log records are collected by the Manager at the end of a test.

Register callback only once   Specifies whether Clients will pass a callback object every time they make a service request or whether Clients will set a default callback property in the Queue Manager so that they do not pass a callback object for every service request.


Connection Properties Form (Application Performance Explorer)

Tab Options

Remote Connection to Server   When selected, allows you to connect to the Application Performance Explorer (APE) server components on a remote machine Otherwise, APE uses local components.

If the Remote Connection to Server box is selected, a valid Network Address must be specified. The server components that can be registered remotely with this option are the Queue Manager, the Server Manager, the Expediter, the Worker, and the Service.

•	Network Address — Specifies the name of the machine upon which the APE server components will be launched.

Connection Parameters for Server and Remote Clients

•	Use Distributed COM (DCOM) — Specifies that instead of Use Remote Automation, the Manager will connect to remote machines to launch the server components and remote clients by using Distributed COM (DCOM).

Requires Windows NT 4.0.

Note   All machines, including remote client machines, must be running Windows NT 4.0, which supports DCOM.

•	Use Remote Automation — Instructs the Manager to use Remote Automation to connect to remote machines that support remote client processes and the server components.

A valid protocol and authentication level must be selected to support Remote Automation.

Note   To use Remote Automation, the Automation Manager must be running on every machine or an OLE Automation error “There are no more endpoints available from the endpoint mapper.”, occurs.

•	List only profiles supported — If selected, the only protocols supported by the local machine are listed in the Protocol list. However, APE does not verify that all the protocols supported by the local machine are supported by the remote machines.

Note   Even though a protocol is displayed in the Protocol list when this option is checked, a remote connection may not be supported.

•	Protocol — Used for any Remote Automation connection to remote server components or remote clients. Protocols in this list may not be supported by the local machine or remote machines. A valid one must be selected if Remote Automation is being used to connect to either a remote server or remote clients.

•	Authentication — Only applied to certain connections in the APE framework. The authentication level specified only effects the Manager’s connections to the remote Server Manager and Queue Manager, and the Clients’ connections to the remote Queue Manager and Worker(s). The authentication level is not applied to the Manager’s connections to remote Clients or the Logger. If the server components are launched on a Windows 95 machine, “Connect” is the only authentication level supported.

Apply   Causes all the connection settings on the Connection tab to be effective for the next test. If Apply is not selected, the next test will run using the connection settings of the last test. When Apply is selected, the Manager connects to a Server Manager on the specified machine and negotiates for configuration rights. If two Manager processes connect to the same Server Manager, many configurations will be disabled on the second Manager to connect. The first Manager to connect will be allowed full control.


Exit Command (File Menu Application Performance Explorer)

Closes the Application Performance Explorer.


File Menu (Application Performance Explorer)

Save Profile

Remove Profile

Exit


Logger Tab (Application Performance Explorer)

Tab Options

Log File   Displays the log file name currently used. All log records created by any server or client component are collected by the Manager and written to this file.

Browse   Opens a Create Log file dialog box that allows the user to specify a log file to which you want to write the log records.

View   Launches the log file in notepad.

Write Log file

•	Overwrite file — When selected, the Manager overwrites the log file every time a test is run. If the Overwrite file box is cleared, the Manager appends all log records of every proceeding test to the same file without deleting records from previous tests.

•	At end of test — When selected, the Logger which stores log records for the server components and the Clients which store their own log records, hold all log records in memory. The log records are not written to a file until the Manager collects the records at the very end of a test.

•	When it reaches a threshold — When selected, the Logger and the Clients will write their log records to a temporary file when the records they’re each holding in memory reach the specified Kilobytes. At the end of a test, the records will still be collected and written to one file by the Manager.

kb — The Kilobytes threshold used by the Logger and the Clients. If the When it reaches a threshold option is selected, the Logger and Clients write the log records they each are holding in memory to a temporary file when the amount of memory used to store the records reaches the specified value.

Log Summary Information   If selected when a test is run, the Manager prints summary information to the log file. The summary information includes a profile summary that is at the beginning of the log, and a performance summary that is at the end of the log.

Show Form   When selected, the Logger’s form is displayed during the following session.


Model Menu (Application Performance Explorer)

Synchronous

Asynchronous


Remove Profile Command (File Menu Application Performance Explorer)

Causes the profile currently shown in the Profile list to be deleted from the profile collection, the selected INI file.


Save Profile Command (File Menu Application Performance Explorer)

Saves the current settings as a profile.

You will be prompted for a profile name. After saving the profile, the new profile name appears in the Profile list.


Synchronous Command (Model Menu Application Performance Explorer)

Causes the Application Performance Explorer (APE) to use a synchronous model to accomplish tasks. When using the Synchronous model, Clients complete tasks by instantiating Workers and calling them directly.


Synchronous Tab (Application Performance Explorer)

When using the Synchronous model, the Application Performance Explorer does not use the Queue Manager or Expediter; these components have available settings on this tab when using the Asynchronous model.


Workers Tab (Application Performance Explorer)

Tab Options

Number of Workers

Early Bind Services   Allows one to test the performance difference between using early binding and late binding.

Early binding is not available when a specific Service is specified by checking the Specify the Service box on the Services tab.

Retain Service References   When selected, Workers keep a reference to any Service object as they are needed and the Worker will only have to instantiate a Service object the first time it uses it. After that, the Worker uses its stored reference to the Service to accomplish tasks.

Preload Services   When selected, the Manager causes the Workers to load the Service object before timing the test. By choosing this option, the time needed to instantiate the service object is not included in the test duration. Preload Services has no effect if the Retain Service References box is not selected, because after the preloading of the Service, the Worker will immediately release it.

Show Forms   When selected, the Worker form(s) are displayed during the following session.

Log Events   When selected, Workers log certain events. The log records are collected by the Manager at the end of a test.


Using the Microsoft Visual DataTools in Visual Basic
Using Microsoft Visual DataTools with Microsoft Visual Basic 5.0

Microsoft Visual DataTools provides a graphical user interface in which you can view and edit objects inside ODBC databases.

You can use Visual DataTools to:

•	Create or modify Microsoft SQL Server databases, tables, and database diagrams.

•	Create, edit, or debug stored procedures and triggers in SQL Server and Oracle databases.

•	Create local queries in a database project for any ODBC database, debug them with an interactive SQL window, and save them in Visual DataTools query files (.dtq files).

•	Copy and paste the SQL statement from a saved query file into your Visual Basic code.

•	Browse and edit data in any ODBC database.

Installing the Visual DataTools Add-in

The Visual DataTools add-in launches Visual DataTools and displays your user connections.

To install the Visual DataTools add-in:

1	Open a Visual Basic 5.0 project.

2	Choose Add-In Manager from the Add-Ins menu.

3	Check the box next to Microsoft Visual DataTools and choose OK.

4	If you haven’t installed either Visual C++ 5.0 Enterprise Edition or “Internet Studio” on your computer, you must run an additional setup program.

From the Visual Basic 5.0 CD-ROM, run the setup.exe found in the \Tools\DataTools folder and follow the installation instructions.

5	Click the Add-Ins menu. The Microsoft Visual DataTools menu item should now appear on the menu.

Viewing UserConnection Objects in the Visual DataTools

Once you’ve installed the Visual DataTools add-in, you can use Visual DataTools to work with the databases represented by UserConnection objects in a Visual Basic project.

To view your UserConnection objects in the Visual DataTools:

1	Open the Visual Basic project that contains the UserConnection objects you wish to view.

2	Select Microsoft Visual DataTools. Microsoft Visual Studio will create and open a database project for you. The database project contains a data connection for each UserConnection object in your Visual Basic project.

3	Switch to Microsoft Visual Studio to work with the databases in the database project.

For more information on UserConnection objects, see Visual Basic Books Online.

Visual DataTools Features for ODBC Databases

Visual DataTools supports different features for different ODBC databases. The following table summarizes which features are supported by which type of database.

Database	Browse and edit data	Create and save queries	Edit stored procedures and triggers	Debug stored procedures	Design tables and database diagrams
SQL Server 4.2	x	x
SQL Server 6.0	x	x	x
SQL Server 6.5	x	x	x	x	x
Oracle 6.x	x	x
Oracle 7.x	x	x	x
Microsoft Access	x	x
Other ODBC databases	x	x